import random
from pymongo import MongoClient

# 生成数据
# client = MongoClient().chapter_7.example_data_3
# name_list = ['衬衣', '裤子', '鞋子', '帽子']
# size_list = ['S', 'M', 'L', 'XL']
# price_list = [100, 200, 300, 600, 800]
#
# for i in range(10):
#     random_ = random.randint(2, 4)
#     client.insert_one({
#         'name': random.choice(name_list),
#         'size': random.sample(size_list, random_),
#         'price': random.sample(price_list, random_)
#     })

# 查询数组包含数据
db.getCollection('example_data_3').find({'size': 'M'})
# 查询数组不包含数据
db.getCollection('example_data_3').find({'size': {'$ne': 'M'}})
# 查询某个范围内的普通字段
db.getCollection('example_data_3').find({'price': {'$lt': 600, 'gte': 200}})
# 查询所有price字段长度为2的记录
db.getCollection('example_data_3').find({'price': {'$size': 2}})
# 索引查询数据 size第一个参数为S的记录
db.getCollection('example_data_3').find({'size.0': 'S'})
# 索引比较数据大小 price第一个数据大于500的所有记录
db.getCollection('example_data_3').find({'price.0': {'$gt': 500}})
